মডাল উইন্ডো হলো এক ধরনের ডায়ালগ বক্স যা ওয়েবপেজের মূল কন্টেন্টের উপরে একটি বিশেষ লেয়ার হিসেবে প্রদর্শিত হয়। এটি ব্যবহারকারীকে কোনো বিশেষ তথ্য প্রদান করে অথবা ইনপুট চাইতে পারে। jQuery ব্যবহার করে সহজেই এই ধরনের মডাল উইন্ডো তৈরি এবং ম্যানেজ করা যায়।
মডাল উইন্ডো তৈরির ধাপগুলি:
1. HTML স্ট্রাকচার তৈরি: প্রথমে একটি বেসিক HTML স্ট্রাকচার তৈরি করুন যা মডাল উইন্ডো এবং একটি ট্রিগার বাটন ধারণ করবে।
<!-- ট্রিগার বাটন -->
<button id="openModal">মডাল খুলুন</button>
<!-- মডাল উইন্ডো -->
<div id="myModal" class="modal">
<div class="modal-content">
<span class="close">×</span>
<p>এটি একটি মডাল উইন্ডো।</p>
</div>
</div>
2. CSS যোগ করুন: মডালের বেসিক স্টাইলিং নিশ্চিত করুন যাতে এটি সুন্দর এবং ব্যবহারিক হয়।
/* মডাল বেকগ্রাউন্ড */
.modal {
display: none; /* প্রদর্শন থেকে লুকানো */
position: fixed; /* স্থির পজিশন */
z-index: 1; /* জে-ইনডেক্স উপরে */
left: 0;
top: 0;
width: 100%; /* পূর্ণ প্রস্থ */
height: 100%; /* পূর্ণ উচ্চতা */
overflow: auto; /* স্ক্রলবার যোগ করা */
background-color: rgb(0,0,0); /* ফেড কালো বেকগ্রাউন্ড */
background-color: rgba(0,0,0,0.4); /* অপারসিটি সহ */
}
/* মডাল কন্টেন্ট */
.modal-content {
background-color: #fefefe;
margin: 15% auto; /* 15% টপ এবং সেন্টার্ড */
padding: 20px;
border: 1px solid #888;
width: 80%; /* 80% প্রস্থ */
}
/* দ্য ক্লোজ বাটন */
.close {
color: #aaa;
float: right;
font-size: 28px;
font-weight: bold;
}
.close:hover,
.close:focus {
color: black;
text-decoration: none;
cursor: pointer;
}
3. jQuery দ্বারা ইন্টারঅ্যাকশন যোগ করুন: jQuery কোড যুক্ত করে মডাল উইন্ডো খুলা এবং বন্ধ করার ফাংশনালিটি যোগ করুন।
$(document).ready(function(){
// মডাল খুলুন
$("#openModal").click(function(){
$("#myModal").show();
});
// মডাল বন্ধ করুন
$(".close").click(function(){
$("#myModal").hide();
});
// যদি মডালের বাইরে ক্লিক করা হয়, মডাল বন্ধ করুন
$(window).click(function(event) {
if ($(event.target).is("#myModal")) {
$("#myModal").hide();
}
});
});jQuery দ্বারা মডাল উইন্ডো তৈরি এবং ম্যানেজ করা অত্যন্ত সহজ। উপরের ধাপগুলো অনুসরণ করে, আপনি কোনো ওয়েবপেজে সহজেই মডাল উইন্ডো ইমপ্লিমেন্ট করতে পারবেন, যা ব্যবহারকারীকে অতিরিক্ত তথ্য প্রদান করবে অথবা তাদের কাছ থেকে ইনপুট চাইবে।